iT邦幫忙

3

在 freecodecamp 開啟 daily coding challenge : Day03

  • 分享至 

  • xImage
  •  

freecodecamp 是什麼 ?

以下是他們的自介

freeCodeCamp 是一個免費學習編程的開發者社區,涵蓋 Python、HTML、CSS、React、Vue、BootStrap、JSON 教程等,還有活躍的技術論壇和豐富的社區活動,在你學習編程和找工作時爲你提供建議和幫助。

不管你是前端,後端還是全端,尤其是自學者(aka沒有朋友)
都適用這網站,但目前我以前端為主。
https://www.freecodecamp.org/learn/front-end-development-libraries/

最近有空從頭檢視自己 coding 的基礎
這個系列會有我發現這個網站的小細節及 daily challenge
以 day-num 紀錄,但不會每天更新(也是練習寫文章)


Day 03

https://ithelp.ithome.com.tw/upload/images/20250926/20179314prrlCwYgwV.png
https://ithelp.ithome.com.tw/upload/images/20250926/20179314Bs8EHgGzYs.png

對台灣人來說,這題國小數學題和上一題幾乎一樣
我們要計算在一定容量下可以儲存多少檔案
(在每個檔案大小都相同的前提下)

本題重點在於

  • “無條件捨去“
  • “單位對照”

思考一下
.
.
.
.
.
.

1. Math.floor()
Math.floor(3.5) // 3
以整數無條件捨去,和上一題一樣

2. 單位對照
我有問了一下GPT,主要是不確定用物件關鍵字filter的方式叫什麼
ok, 這叫 映射表 / 對照表 (Mapping Table / Lookup Table)

所以我們可以寫一個物件
const unitToBytes = {
    "B": 1,
    "KB": 1000,
    "MB": 1000 * 1000
  };
用法`unitToBytes[fileUnit]`
   `unitToBytes["KB"] // 1000` 

tips

  • python 的寫法幾乎一樣

  • 當然if/else 也可以
    但如果條件很多呢?

     let fileBytes;
    
      if (unit === "B") {
        fileBytes = fileSize;
      } else if (unit === "KB") {
        fileBytes = fileSize * 1000;
      } else if (unit === "MB") {
        fileBytes = fileSize * 1000 * 1000;
      } else {
        throw new Error("Unsupported unit");
      }
    

我是阿mo,來吃個健達繽紛樂!我只吃一條!!/images/emoticon/emoticon27.gif


圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言